❓ Что такое антипаттерн? Какие антипаттерны вы знаете?
Антипаттерн — это часто встречающееся неудачное решение типичной проблемы в проектировании, архитектуре или коде, которое сначала кажется разумным, но в итоге приводит к негативным последствиям: усложнению поддержки, снижению производительности или росту технического долга.
На практике встречаются такие антипаттерны:
▪️God Object / God Class – класс, берущий на себя слишком много ответственности, нарушая принцип единственной ответственности (SRP). ▪️ Spaghetti Code – код без чёткой структуры и связей, сложно читаемый и сопровождаемый. ▪️Golden Hammer – использование одного известного подхода (или технологии) для всех задач, независимо от уместности. ▪️ Lava Flow – фрагменты устаревшего кода, которые остались в системе без ясного понимания их назначения, но продолжают использоваться. ▪️Copy-Paste Programming – дублирование кода вместо выделения повторяющейся логики. ▪️ Premature Optimization – оптимизация до выявления реальных узких мест, часто усложняющая систему без ощутимой пользы. ▪️Magic Numbers / Strings – использование "жёстко забитых" значений вместо констант с понятными именами.
❓ Что такое антипаттерн? Какие антипаттерны вы знаете?
Антипаттерн — это часто встречающееся неудачное решение типичной проблемы в проектировании, архитектуре или коде, которое сначала кажется разумным, но в итоге приводит к негативным последствиям: усложнению поддержки, снижению производительности или росту технического долга.
На практике встречаются такие антипаттерны:
▪️God Object / God Class – класс, берущий на себя слишком много ответственности, нарушая принцип единственной ответственности (SRP). ▪️ Spaghetti Code – код без чёткой структуры и связей, сложно читаемый и сопровождаемый. ▪️Golden Hammer – использование одного известного подхода (или технологии) для всех задач, независимо от уместности. ▪️ Lava Flow – фрагменты устаревшего кода, которые остались в системе без ясного понимания их назначения, но продолжают использоваться. ▪️Copy-Paste Programming – дублирование кода вместо выделения повторяющейся логики. ▪️ Premature Optimization – оптимизация до выявления реальных узких мест, часто усложняющая систему без ощутимой пользы. ▪️Magic Numbers / Strings – использование "жёстко забитых" значений вместо констант с понятными именами.
Telegram has no known backdoors and, even though it is come in for criticism for using proprietary encryption methods instead of open-source ones, those have yet to be compromised. While no messaging app can guarantee a 100% impermeable defense against determined attackers, Telegram is vulnerabilities are few and either theoretical or based on spoof files fooling users into actively enabling an attack.
Библиотека собеса по Java | вопросы с собеседований from hk